package com.huel.service;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.util.Log;

import static android.provider.Telephony.Sms.Intents.getMessagesFromIntent;

public class SmsReciver extends BroadcastReceiver {
    //intent:广播发送时使用的intent
    @Override
    public void onReceive(Context context, Intent intent) {
        //Bundle对象也是通过键值对的形式封装数据的
        Bundle bundle = intent.getExtras();
        //数组中的每个元素都是一条短信
        Object[] objects = (Object[]) bundle.get("pdus");
        //对数组中的每条短信进行遍历
        for (Object object : objects) {
            //通过pdu创建短信对象
            SmsMessage sms = SmsMessage.createFromPdu((byte[]) object);
            //获取发信人的号码
            String address = sms.getOriginatingAddress();
            //获取短信内容
            String body = sms.getMessageBody();
            System.out.println(address + ";" + body);
            //通过匹配来拦截特定的号码
            if ("1222".equals(address)) {
                abortBroadcast();
            }
        }
    }

}
